<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:a4j="http://richfaces.org/a4j"
      xmlns:rich="http://richfaces.org/rich"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:c="http://java.sun.com/jsp/jstl/core"> 

<h:head></h:head> 
<ui:composition template="/template/mainLayout.xhtml">
<ui:param name="windowsTitle" value="Cambio de productos"></ui:param> 
	<ui:define name="bodyContent">
        	<h:form>
		
    <rich:panel styleClass="centrado fullContainer">
        <fieldset class="tabla" style=" width : 680px;">
        <legend class="texto">Filtrar productos...</legend>
        	<h:panelGrid columns="4" styleClass="texto">
        	
        		<h:outputText value="Codigo: " />
        		<h:outputText value="Nombre: " />
        		<h:outputText value="Rubro:" />
        		<!-- <h:outputText value="Bajo de stock: " /> -->

        		<h:inputText value="#{productosBean.prodFilter.codigo}" />
        		
        		<h:inputText value="#{productosBean.prodFilter.nombre}" />
        		
        		<h:selectOneMenu value="#{productosBean.prodFilter.rubroId}">
        			<f:selectItem itemLabel="Todos"/>
        			<f:selectItems value="#{rubroBean.rubrosActivos}" var="rub" 
        			itemLabel="#{rub.nombre}"
        			itemValue="#{rub.id}">
        			</f:selectItems>
        		</h:selectOneMenu>
        		
        		
        		<!-- <h:selectBooleanCheckbox value="#{productosBean.prodFilter.bajoStock}" class="center" />-->
        		
        	</h:panelGrid>
        	<h:commandButton style="width: 100px;"  value="Filtrar" action="#{productosBean.buscarProductos(productosBean.prodFilter)}" />
        	
		</fieldset>
		        
			<rich:dataTable styleClass="tabla fullContainer" value="#{productosBean.listaProductos}" var="prod" rows="15" reRender="ds" id="simpletable">
			<f:facet name="header">
			<rich:columnGroup>
				<rich:column rowspan="2">
				
				</rich:column>
				<rich:column rowspan="2">
                    <h:outputText value="Cod"/>
                </rich:column>
                <rich:column  rowspan="2" >
                    <h:outputText value="Nombre"/>
                </rich:column>
                <rich:column rowspan="2" >
                    <h:outputText value="Rubro"/>
                </rich:column>
                <rich:column title="Stock" colspan="3">
                    <h:outputText value="Stock" />
                </rich:column>                
			</rich:columnGroup>				
			</f:facet>
		 	<rich:column width="30px" style="width:65px;">
               	<center>
               	<h:commandLink  
               		onclick="tabla.actionClick('#{rich:clientId('buttonDelete')}','#{rich:clientId('inputDelete')}',#{prod.id})" >
               		<h:graphicImage value="/resources/img/buttons/cambio.jpg" width="15px" height="15px" title="Eliminar producto." />
               	</h:commandLink>
               	</center>
            </rich:column>
            <rich:column style="width:35px;" >
                <h:outputText value="#{prod.id}"/>
            </rich:column> 
            <rich:column >
                <h:outputText value="#{prod.nombre}"/> 
            </rich:column>
            <rich:column style="width:130px;">
                <h:outputText value="#{prod.rubro.nombre}"/> 
            </rich:column>
            <rich:column style="width:35px;">
                <h:outputText value="#{prod.stock}">
                	<f:convertNumber  pattern="####0.##" />
                </h:outputText>  
            </rich:column>
            <f:facet name="footer">
                <rich:dataScroller id="ds" renderIfSinglePage="false"></rich:dataScroller>
            </f:facet>
        </rich:dataTable>
			
	</rich:panel>
	
	
	
    </h:form>
    <rich:popupPanel id="adicionModalPanel" show="#{productosBean.adicion}" modal="true" autosized="true" resizeable="false" moveable="false">
		<f:facet name="header">
			<h:outputText value="Adicion de stock" /> 
		</f:facet>
		<f:facet name="controls">
			<h:outputLink onclick="document.getElementById('#{rich:clientId('cancelAdicButton')}').click(); return false;" >X</h:outputLink>
        </f:facet>
		<h:form>
		<div align="center">
			<h:inputHidden value="#{productosBean.producto.id}" />
			<h:inputHidden value="#{productosBean.modificacion}" />
			<h:panelGrid columns="2">
				<h:outputText value="Cantidad: " />
				<h:inputText value="#{productosBean.cantidad}" id="cantidad" required="true" requiredMessage="Debe completar el campo cantidad." >
					<f:validateDoubleRange maximum="#{productosBean.producto.stockMax-productosBean.producto.stock}" minimum="1"></f:validateDoubleRange>
				</h:inputText>
				
				<h:outputText value="Precio de compra: " />
				<h:inputText id="precioc" value="#{productosBean.producto.precioCompra}" validator="#{productosBean.validatePrecioCompra}" required="true" requiredMessage="Debe completar el campo Precio de compra." />
				
			</h:panelGrid>
			
			<rich:message for="cantidad" />
			<rich:message for="precioc" />
			
		</div>
		<h:commandButton action="#{productosBean.adicionar}" value="Aceptar" />
		<a4j:commandButton value="Cancelar" id="cancelAdicButton" action="#{productosBean.adicionarCancel}" onclick="#{rich:component('adicionModalPanel')}.hide();" immediate="true" />
		<h:inputHidden value="#{productosBean.adicion}" />
		</h:form>
	</rich:popupPanel>
	
	<rich:popupPanel id="sustraerModalPanel" show="true" modal="true" autosized="true" resizeable="false" moveable="false">
		<f:facet name="header">
			<h:outputText value="Cambiar" /> 
		</f:facet>
		<f:facet name="controls">
			<h:outputLink onclick="document.getElementById('#{rich:clientId('cancelSustraerButton')}').click(); return false;" >X</h:outputLink>
        </f:facet>
		<h:form>
		<div align="center">
			<h:inputHidden value="#{productosBean.producto.id}" />
			<h:inputHidden value="#{productosBean.sustraccion}" />
			<h:inputHidden id="subProdMax" value="#{productosBean.producto.stock}" />
			<h:inputHidden id="subProdMin" value="1" />
			<h:inputHidden id="subEM" value="El campo cantidad debe contener un valor mayor que 0 y menor o igual al stock disponible (#{productosBean.producto.stock})" readonly="true" />
			<h:panelGrid columns="2">
				<h:outputText value="Cantidad: " />
				<h:inputText value="#{productosBean.cantidad}" id="cantidad" required="true" requiredMessage="Debe completar el campo cantidad.">
					<f:attribute name="message" value="subEM"  ></f:attribute>
					<f:attribute name="maximun" value="subProdMax"></f:attribute>
					<f:attribute name="minimun" value="subProdMin"></f:attribute>
					<f:validator validatorId="bigDecimalValidator" />
				</h:inputText>
				<h:outputText value="Motivo: " />
				<h:inputTextarea id="detalleSus"  value="#{productosBean.detalleSustraccion}" />
			</h:panelGrid>
			
			<rich:message for="cantidad" />
			<rich:message for="detalleSus" />
			
		</div>
		<h:commandButton action="#{productosBean.restar(productosBean.cantidad,productosBean.detalleSustraccion)}" value="Aceptar" />
		<a4j:commandButton value="Cancelar" id="cancelSustraerButton" action="#{productosBean.restarCancel}" onclick="#{rich:component('sustraerModalPanel')}.hide();" immediate="true" />
		<h:inputHidden value="#{productosBean.sustraccion}" />
		</h:form>
	</rich:popupPanel>
	
	
	
	
	</ui:define>
</ui:composition>
</html>
